#ifndef __BSP_RTC_H
#define __BSP_RTC_H

#include "ch32f10x.h"

/* Global Variable */    
typedef struct 
{
	vu8 hour;
	vu8 min;
	vu8 sec;			
	
	vu16 w_year;
	vu8  w_month;
	vu8  w_date;
	vu8  week;		 
}calendar_obj;	



extern calendar_obj calendar;
void RTC_Init(void);
u8 RTC_SetTime(u16 syear,u8 smon,u8 sday,u8 hour,u8 min,u8 sec);
u8 RTC_Alarm_Set(u16 syear,u8 smon,u8 sday,u8 hour,u8 min,u8 sec);
u8 RTC_Update(void);    // 刷新时间
void RTC_ConfigALR(FunctionalState NewState);
u8 Is_Leap_Year(u16 year);
u8 RTC_Get_Week(u16 year,u8 month,u8 day);
u8 RTC_Set(u16 syear,u8 smon,u8 sday,u8 hour,u8 min,u8 sec);
	
#endif
